home *** CD-ROM | disk | FTP | other *** search
- jtkutils.tcl\n\nIntroduction\nThe\ jtkutils.tcl\ library\ is\ distributed\ as\ part\ of\ the\ jstools\ package.\ \ It\ consists\ of\ procedures\ useful\ in\ constructing\ dialogue\ boxes\ and\ laying\ out\ user¡interface\ components,\ convenience\ procedures\ for\ working\ with\ the\ selection,\ procedures\ to\ help\ support\ session\ management,\ and\ procedures\ for\ setting\ fonts\ in\ a\ fault¡tolerant\ way.\n\nThis\ document\ describes\ jtkutils.tcl\ version\ 3.6/3.0.\n\nUsage\nAccessing\ the\ Library\nIn\ order\ to\ use\ the\ jtkutils.tcl\ library,\ it\ (and\ any\ other\ libraries\ it\ depends\ on)\ must\ be\ in\ your\ Tcl\ auto_path,\ described\ in\ tclvars(n).\ \ Information\ about\ how\ to\ arrange\ that,\ and\ other\ conventions\ common\ to\ the\ jstools\ libraries,\ is\ in\ the\ Usage\ section\ of\ The\ jstools\ Libraries.\n\nCredits\ and\ Copyright\nAuthor\nJay\ Sekora\ \njs@bu.edu\nhttp://shore.net/~js/\n\nCopyright\nThe\ library\ is\ copyright\ ⌐\ 1992-1994\ by\ Jay\ Sekora,\ but\ may\ be\ freely\ copied\ and\ modified\ for\ non¡commercial\ purposes.\ \ (Please\ contact\ me\ if\ you\ want\ to\ use\ it\ for\ a\ commercial\ purpose,\ this\ may\ be\ OK\ under\ some\ circumstances.)\n\nOverview\nProcedures\nj:wm_client\ -\ set\ the\ session\ client\ hostname\nj:wm_command\ -\ set\ the\ session\ client\ command\nj:new_toplevel\ -\ create\ a\ new\ toplevel,\ avoiding\ name\ conflicts\nj:selection_if_any\ -\ return\ selection\ if\ it\ exists,\ else\ {}\nj:no_selection\ -\ true\ if\ there\ is\ no\ selection\nj:beep\ -\ flash\ a\ widget\ and/or\ ring\ the\ X\ display's\ bell\nj:default_button\ -\ bind\ Return\ to\ default\ button\nj:cancel_button\ -\ set\ up\ bindings\ for\ cancel\ button\nj:tab_ring\ -\ specify\ order\ for\ tab\ traversal\ of\ entry\ widgets\nj:dialogue\ -\ position\ a\ toplevel\ near\ center\ of\ screen\nj:dialog\ -\ alias\ for\ j:dialogue\nj:rule\ -\ return\ a\ frame\ widget\ suitable\ for\ use\ as\ a\ divider\nj:filler\ -\ return\ a\ frame\ widget\ suitable\ for\ use\ as\ a\ spacer\nj:configure_font\ -\ configure\ a\ widget\ with\ font\ from\ list,\ or\ default\nj:configure_tag_font\ -\ configure\ a\ text\ tag\ with\ font\ from\ list,\ or\ default\n\nSee\ Also\n\tjinit.tcl\n\nj:wm_client\nUsage\n\tj:wm_client\ \[hostname\]\nArguments\n\thostname,\ if\ specified,\ is\ the\ machine\ to\ claim\ to\ be\ running\ on\n\nDescription\nThis\ procedure\ is\ normally\ called\ without\ arguments,\ in\ which\ case\ it\ tries\ to\ determine\ the\ name\ of\ the\ machine\ the\ current\ application\ is\ running\ on,\ and\ sets\ that\ as\ the\ X\ `client'\ machine,\ for\ the\ use\ of\ session\ managers.\ \ If\ hostname\ is\ specified,\ that\ will\ be\ set\ as\ the\ X\ client\ hostname.\n\nThis\ procedure\ tries\ to\ determine\ the\ hostname\ by\ looking\ in\ several\ places\ for\ the\ Unix\ hostname(1)\ command\;\ if\ it\ can't\ find\ hostname(1),\ it\ will\ set\ the\ client\ hostname\ to\ `localhost'.\n\nj:wm_command\nUsage\n\tj:wm_command\ \[command\]\nArguments\n\tcommand,\ if\ specified,\ is\ the\ command\ line\ to\ register\nExample\n\tglobal\ argv0\n\tj:wm_command\ \[list\ \$argv0\ +\$line\ \$filename\]\n\nDescription\nThis\ procedure\ is\ normally\ called\ without\ arguments,\ in\ which\ case\ it\ sets\ the\ X\ client\ command\ (used\ by\ session\ managers)\ to\ the\ command\ line\ that\ was\ used\ to\ invoke\ the\ current\ application,\ as\ best\ it\ can\ determine,\ using\ the\ Tcl\ variables\ argv0\ and\ argv.\ \ (For\ details\ of\ these\ variables,\ see\ the\ wish(1)\ or\ tclsh(1)\ manual\ pages.)\ \ If\ command\ is\ specified,\ it\ will\ be\ used\ instead.\ \ (It\ should\ have\ proper\ Tcl\ list\ structure,\ so\ the\ list(n)\ or\ concat(n)\ command\ is\ likely\ to\ be\ useful.)\n\nj:new_toplevel\nUsage\n\tj:new_toplevel\ prefix\ \[args\]\nArguments\n\tprefix\ will\ be\ the\ initial\ part\ of\ the\ new\ toplevel\ widget\n\targs,\ if\ any,\ are\ configuration\ options\ for\ the\ new\ toplevel\nExample\n\tset\ tl\ \[j:new_toplevel\ .notice\]\n\tmessage\ \$tl.msg\ -text\ \$text\n\tbutton\ \$tl.b\ -text\ OK\ -command\ \[list\ destroy\ \$tl\]\n\tpack\ \$tl.msg\ \$tl.b\ -fill\ x\nDescription\nThis\ procedure\ creates\ a\ new\ toplevel\ widget\ with\ a\ name\ that\ won't\ conflict\ with\ any\ existing\ widget.\ \ It\ does\ this\ by\ taking\ the\ prefix\ (which\ must\ start\ with\ a\ period)\ and\ adding\ the\ lowest\ possible\ integer\ suffix\ to\ it\ that\ will\ not\ produce\ the\ name\ of\ a\ widget\ that\ already\ exists.\ \ For\ instance,\ if\ you\ specify\ prefix\ as\ .more\ and\ no\ window\ named\ .more0\ already\ exists,\ the\ new\ window\ will\ be\ named\ more0.\ \ The\ name\ of\ the\ created\ window\ is\ returned.\n\nj:selection_if_any\nUsage\n\tj:selection_if_any\nDescription\nThis\ convenience\ procedure,\ from\ R.\ James\ Noble\ <kjx@comp.vuw.ac.nz>,\ returns\ the\ selection\ if\ there\ is\ one,\ and\ the\ empty\ string\ {}\ otherwise.\n\nj:no_selection\nDescription\nThis\ procedure\ returns\ true\ (1)\ if\ there\ is\ no\ current\ selection,\ and\ false\ (0)\ if\ there\ is\ a\ valid\ selection.\ \ It's\ useful\ as\ a\ test\ before\ doing\ selection\ get\ or\ manipulating\ the\ selection.\ \ Note\ that\ j:no_selection\ will\ be\ true\ if\ there's\ an\ X\ selection,\ even\ if\ it's\ not\ in\ the\ current\ application.\n\nj:beep\nUsage\n\tj:beep\ widget\nArgument\n\twidget\ is\ the\ widget\ to\ call\ the\ user's\ attention\ to\n\nDescription\nThis\ procedure\ tries\ to\ get\ the\ user's\ attention,\ either\ by\ briefly\ flashes\ a\ widget,\ reversing\ the\ foreground\ and\ background\ colours\ (if\ J_PREFS(visiblebell)\ is\ true),\ or\ by\ ringing\ the\ X\ display's\ bell\ (if\ J_PREFS(audiblebell)\ is\ true),\ or\ both.\n\nIdeally,\ the\ widget\ argument\ should\ name\ a\ widget\ with\ distinct\ background\ and\ foreground\ colours\ for\ the\ visible\ bell\ to\ work\;\ j:beep\ tries\ to\ do\ something\ reasonable\ with\ widgets\ that\ don't\ have\ both\ a\ foreground\ and\ a\ background\ colour,\ but\ it\ won't\ work\ in\ every\ case.\n\nThe\ X\ bell\ can't\ be\ rung\ in\ versions\ of\ Tk\ prior\ to\ 4.0,\ so\ J_PREFS(audiblebell)\ has\ no\ effect\ under\ versions\ 3.6\ and\ earlier.\n\nj:default_button\nUsage\n\tj:default_button\ button\ widget...\nArguments\n\tbutton\ is\ the\ path\ name\ of\ the\ Cancel\ button\n\twidget...\ are\ a\ series\ of\ widgets\ that\ can\ get\ keyboard\ focus,\ to\ bind\ to\nExample\n\tj:default_button\ .buttons.call\ .name.entry\ .phone.entry\nDescription\nThis\ procedure\ arranges\ a\ keyboard\ shortcut\ for\ pressing\ a\ default\ button.\ \ The\ widget\ arguments\ are\ widgets\ that\ might\ get\ the\ keyboard\ focus.\ \ For\ each\ widget,\ the\ Return\ key\ is\ bound\ so\ as\ to\ invoke\ button.\ \ Typically,\ you'd\ create\ a\ panel\ with\ a\ default\ button,\ and\ possibly\ some\ entry\ and/or\ text\ widgets,\ and\ invoke\ j:default_button\ listing\ all\ the\ entry\ and\ text\ widgets.\ \ You\ can\ also\ use\ focus\ to\ give\ the\ keyboard\ focus\ to\ the\ toplevel\ widget,\ \ and\ specify\ it\ instead\ (or\ as\ well).\n\nj:cancel_button\nUsage\n\tj:cancel_button\ button\ widget...\nArguments\n\tbutton\ is\ the\ path\ name\ of\ the\ Cancel\ button\n\twidget...\ are\ a\ series\ of\ widgets\ that\ can\ get\ keyboard\ focus,\ to\ bind\ to\nDescription\nThis\ procedure\ arranges\ several\ keyboard\ shortcuts\ for\ pressing\ a\ Cancel\ button.\ \ The\ widget\ arguments\ are\ widgets\ that\ might\ get\ the\ keyboard\ focus.\ \ For\ each\ widget,\ Control-c,\ Control-g,\ Meta-q,\ and\ Meta-period\ are\ bound\ so\ as\ to\ invoke\ button.\ \ Typically,\ you'd\ create\ a\ panel\ with\ a\ Cancel\ button\ and\ some\ entry\ and/or\ text\ widgets,\ and\ invoke\ j:cancel_button\ listing\ all\ the\ entry\ and\ text\ widgets.\ \ You\ can\ also\ use\ focus\ to\ give\ the\ keyboard\ focus\ to\ the\ toplevel\ widget,\ \ and\ specify\ it\ instead\ (or\ as\ well).\n\nj:tab_ring\nUsage\n\tj:tab_ring\ widget...\nArguments\n\twidget...\ are\ a\ series\ of\ (typically\ entry)\ widgets\ to\ chain\ together\nDescription\nThis\ procedure\ lets\ you\ link\ several\ widgets,\ typically\ entry\ widgets,\ so\ that\ the\ Tab\ key\ can\ be\ used\ to\ move\ the\ keyboard\ focus\ back\ and\ forth\ between\ them.\ \ For\ each\ widget\ in\ the\ list,\ the\ Tab\ key\ is\ bound\ so\ as\ to\ move\ the\ keyboard\ focus\ to\ the\ next\ widget\ in\ the\ list,\ and\ Shift-Tab\ is\ bound\ so\ as\ to\ move\ it\ to\ the\ previous\ widget.\ \ (The\ last\ widget\ in\ the\ list\ and\ the\ first\ are\ similarly\ linked.)\ \ This\ lets\ you\ support\ keyboard\ traversal\ of\ forms\ made\ up\ of\ entry\ or\ text\ widgets.\ \ (Theoretically,\ you\ could\ also\ use\ it\ to\ support\ keyboard\ control\ of\ other\ widgets\ as\ well,\ but\ since\ there's\ no\ visible\ indication\ of\ what\ wiidget\ has\ the\ focus\ in\ Tk\ 3.6\ and\ earlier,\ this\ wouldn't\ be\ terribly\ clear,\ and\ in\ Tk\ 4.0\ this\ procedure\ isn't\ necessary.)\n\nj:dialogue\nj:dialog\nUsage\n\tj:dialogue\ widget\nArgument\n\twidget\ is\ the\ toplevel\ widget\ to\ position\nDescription\nThis\ (probably\ misnamed)\ procedure\ simply\ positions\ a\ toplevel,\ widget,\ near\ the\ middle\ of\ the\ screen\ (centred\ halfway\ across,\ and\ one¡third\ down\ from\ the\ top),\ and\ raises\ it.\ \ It\ only\ takes\ effect\ if\ the\ global\ variable\ J_PREFS(autoposition)\ is\ true\ (1)\;\ otherwise\ it\ lets\ the\ window\ manager\ position\ it.\ \ (A\ window\ manager\ will\ typically\ ask\ the\ user\ to\ position\ the\ new\ window\ with\ the\ mouse.)\ \ If\ you\ use\ j:read_standard_prefs\ (in\ jprefs.tcl)\ and\ j:global_pref_panel\ (in\ jprefpanel.tcl),\ your\ users\ can\ choose\ whether\ they\ want\ dialogue\ panels\ auto¡positioned\ or\ not.\n\nYou\ can\ invoke\ this\ procedure\ as\ either\ j:dialogue\ or\ j:dialog.\n\nj:rule\nUsage\n\tj:rule\ parent\ \[args\]\nArgument\n\tparent\ is\ the\ widget\ you're\ packing\ the\ rule\ into\nOptions\n\targs\ are\ options\ to\ configure\ the\ appearance\ of\ the\ returned\ frame\nExamples\n\tpack\ \\\n\t\ \ \$w.textbg\ \\\n\t\ \ \[j:rule\ \$w\]\ \\\n\t\ \ \$w.textfg\ \\\n\t\ \ \[j:rule\ \$w\]\ \\\n\t\ \ \$w.textsb\ \\\n\t\ \ \[j:rule\ \$w\]\ \\\n\t\ \ \$w.textsf\ \\\n\t\ \ -in\ \$w\ -fill\ x\n\tpack\ \\\n\t\ \ .foo.title\ \\\n\t\ \ \[j:rule\ .foo\ -height\ 1\ -background\ black\]\ \\\n\t\ \ .foo.buttons\ \\\n\t\ \ -in\ .foo\ -side\ top\ -fill\ x\ -expand\ yes\nDescription\nThis\ procedure\ returns\ a\ thin\ sunken\ frame\ intended\ to\ be\ used\ as\ a\ `rule'\ -\ a\ narrow\ groove\ between\ other\ widgets.\ \ You\ typically\ use\ it\ in\ brackets\ directly\ in\ a\ pack\ command.\ \ By\ default,\ the\ frame\ returned\ is\ a\ 2x2\ pixel\ square,\ but\ you\ typically\ specify\ either\ `-fill\ x'\ or\ `-fill\ y'\ when\ you\ pack\ it\ so\ that\ it\ gets\ stretched\ in\ one\ direction\ or\ the\ other.\ \ If\ you\ specify\ any\ args,\ they're\ used\ to\ configure\ the\ frame,\ so\ you\ can\ change\ its\ size\ (or\ other\ aspects\ of\ its\ appearance\ -\ you\ can\ make\ it\ raised\ instead\ of\ sunken,\ for\ instance,\ or\ change\ its\ color).\ \ You\ can\ also\ control\ its\ behaviour\ by\ arguments\ to\ the\ pack\ command.\n\nj:filler\nUsage\n\tj:filler\ parent\ \[args\]\nArgument\n\tparent\ is\ the\ widget\ you're\ packing\ the\ filler\ into\nOptions\n\targs\ are\ options\ to\ configure\ the\ appearance\ of\ the\ returned\ frame\nExamples\n\tpack\ \[j:filler\ \$w\]\ \$w.name\ \[j:filler\ \$w\]\ \$w.rgb\ \\\n\t\ \ \[j:filler\ \$w\]\ \$w.patch\ \[j:filler\ \$w\]\ \\\n\t\ \ -in\ \$w\ -side\ right\n\tpack\ \\\n\t\ \ .foo.title\ \\\n\t\ \ \[j:filler\ .foo\ -height\ 25\]\ \\\n\t\ \ .foo.buttons\ \\\n\t\ \ -in\ .foo\ -side\ top\ -fill\ x\ -expand\ yes\nDescription\nThis\ procedure\ returns\ a\ frame\ intended\ to\ be\ used\ as\ a\ `filler'\ -\ as\ padding\ to\ control\ the\ spacing\ between\ other\ widgets.\ \ You\ typically\ use\ it\ in\ brackets\ directly\ in\ a\ pack\ command.\ \ By\ default,\ the\ frame\ returned\ is\ a\ 10x10\ pixel\ square.\ \ If\ you\ specify\ any\ args,\ they're\ used\ to\ configure\ the\ frame,\ so\ you\ can\ change\ its\ size\ (or\ other\ aspects\ of\ its\ appearance,\ although\ this\ would\ make\ it\ more\ than\ just\ a\ spacer).\ \ You\ can\ also\ control\ its\ behaviour\ by\ arguments\ to\ the\ pack\ command.\n\nj:configure_font\nUsage\n\tj:configure_font\ widget\ fontlist\nArguments\n\twidget\ is\ the\ widget\ whose\ font\ you\ want\ to\ set\n\tfontlist\ is\ a\ list\ of\ fonts\ (possibly\ just\ one)\ to\ try\ to\ use\ (or\ `default')\nExamples\n\tj:configure_font\ .t\ {\n\t\ \ -*-lucidabright-medium-r-normal--*-100-75-75-*-100-*-*\n\t\ \ -*-lucidabright-medium-r-normal--*-100-*-*-*-*-*-*\n\t\ \ -*-times-medium-r-normal--*-100-*-*-*-*-*-*\n\t\ \ flexible\n\t}\n\t\n\tj:configure_font\ .t\ {\n\t\ \ koi9\n\t\ \ default\n\t\ \ fixed\n\t}\nDescription\nThis\ is\ a\ general\ way\ to\ set\ fonts\ when\ you're\ not\ sure\ what\ fonts\ are\ available\ on\ the\ user's\ system.\ \ It\ goes\ through\ the\ list\ of\ fonts,\ and\ tries\ to\ set\ widget's\ font\ option\ to\ each\ font\ in\ turn,\ until\ it\ finds\ one\ that's\ available.\ \ If\ a\ font\ name\ is\ `default',\ then\ at\ that\ point\ in\ the\ list\ (i.e.,\ if\ no\ previous\ fonts\ have\ succeeded),\ it'll\ try\ to\ set\ the\ widget's\ font\ to\ whatever\ it's\ normal\ X\ default\ font\ would\ be,\ using\ the\ X\ defaults\ mechanism.\ \ (Note\ that\ it\ is\ possible\ for\ this\ to\ fail,\ if\ the\ user\ has\ specfied\ a\ default\ font\ that\ doesn't\ exist\ on\ hir\ X\ server.)\ \ If\ a\ font\ in\ the\ list\ is\ empty\ (as\ will\ be\ the\ case\ if\ you\ specify\ fontlist\ as\ {}),\ it'll\ try\ to\ set\ the\ font\ to\ 12¡point\ Courier.\n\nGenerally\ you\ want\ to\ put\ unusual\ fonts\ that\ your\ users\ might\ not\ have\ available\ at\ the\ beginning\ of\ the\ list,\ and\ end\ the\ list\ with\ fonts\ you're\ certain\ your\ users\ will\ have,\ like\ fixed\ or\ flexible.\n\nj:configure_tag_font\nUsage\n\tj:configure_tag_font\ widget\ tag\ fontlist\nArguments\n\twidget\ is\ the\ text\ widget\ that\ tag\ is\ in\n\ttag\ is\ the\ tag\ whose\ font\ you\ want\ to\ set\n\tfontlist\ is\ a\ list\ of\ fonts\ (possibly\ just\ one)\ to\ try\ to\ use\ (or\ `default')\nExample\n\tj:configure_tag_font\ .t\ bold\ {\n\t\ \ -*-garamond-bold-r-normal--*-120-*\n\t\ \ -*-garamond-demibold-r-normal--*-120-*\n\t\ \ -*-times-bold-r-normal--*-120-*\n\t\ \ -*-*-bold-r-normal--*-120-*\n\t\ \ -*-*-bold-r-*--*-120-*\n\t}\n\nDescription\nThis\ procedure\ is\ very\ similar\ to\ j:configure_font,\ but\ instead\ of\ setting\ the\ font\ of\ the\ entire\ widget,\ it\ sets\ the\ font\ for\ the\ particular\ tag\ tag\ in\ the\ text\ widget\ widget.\ \ See\ j:configure_font\ for\ a\ description\ of\ how\ fontlist\ is\ used.\n\nEvolution\nFeel\ free\ to\ report\ bugs\ (and\ feature\ requests)\ to\ me,\ <js@bu.edu>,\ and\ I\ will\ try\ to\ deal\ with\ them.\ \ Also,\ feel\ free\ to\ fix\ bugs\ or\ add\ features\ on\ your\ own\ and\ let\ me\ know\ how\ you\ did\ it.\n\nBugs\ and\ Misfeatures\n*\ It's\ unfortunate\ to\ have\ to\ hardwire\ Shift-Tab\ to\ Backtab\ in\ j:tab_ring,\ but\ there\ doesn't\ seem\ to\ be\ a\ <Backtab>\ X11\ keysym.\n\nFuture\ Directions\n*\ j:tab_ring\ will\ be\ essentially\ obsolete\ in\ Tk\ 4.0,\ since\ its\ functionality\ is\ provided\ by\ default\ Tk\ bindings.\n\nChanges\n*\ These\ procedures\ used\ to\ be\ in\ a\ file\ called\ jlibrary.tcl.\ \ Starting\ with\ version\ 3.6/2.0,\ they're\ in\ their\ own\ independent\ library.\n {{{jdoc:xref:link {4.55 4.62 10.213 10.234 10.242 10.259 10.263 10.284 23.0 23.11 24.0 24.12 25.0 25.14 26.0 26.18 27.0 27.14 28.0 28.6 29.0 29.16 30.0 30.15 31.0 31.10 32.0 32.10 33.0 33.8 34.0 34.6 35.0 35.8 36.0 36.16 37.0 37.20 40.1 40.10 137.409 137.430 137.435 137.445 137.451 137.470 137.475 137.489 226.34 226.50 226.182 226.198}} {jdoc:xref:manpage {10.129 10.136 51.89 51.97 63.300 63.304 63.311 63.316 63.437 63.441 63.448 63.454}} {jdoc:anchor:anchorname {3.0 4.0 8.0 9.0 12.0 13.0 21.0 22.0 42.0 43.0 53.0 54.0 65.0 66.0 79.0 80.0 85.0 86.0 89.0 90.0 102.0 103.0 113.0 114.0 122.0 123.0 130.0 131.0 141.0 142.0 166.0 167.0 185.0 186.0 209.0 210.0 228.0 229.0}} {richtext:font:roman {2.0 3.0 4.0 4.4 4.16 4.55 4.62 6.24 6.36 8.0 10.0 10.20 10.32 10.105 10.114 10.129 10.136 10.217 10.224 10.246 10.251 10.263 10.284 12.0 14.0 15.0 15.9 16.0 16.21 18.0 19.0 21.0 23.11 24.0 24.12 25.0 25.14 26.0 26.18 27.0 27.14 28.0 28.6 29.0 29.16 29.24 29.30 30.0 30.15 31.0 31.10 32.0 32.10 33.0 33.8 33.21 33.31 34.0 34.6 35.0 35.8 36.0 36.16 36.69 37.20 39.0 40.0 40.1 40.10 42.0 44.0 44.1 44.13 44.14 44.22 45.0 46.0 46.1 46.9 48.0 49.0 49.230 49.238 51.89 51.97 51.127 51.135 51.176 51.185 53.0 55.0 55.1 55.14 55.15 55.22 56.0 57.0 57.1 57.8 58.0 61.0 62.0 63.0 63.242 63.247 63.252 63.256 63.300 63.304 63.311 63.316 63.339 63.346 63.437 63.441 63.448 63.454 65.0 67.0 67.1 67.23 67.24 67.28 68.0 68.9 69.1 69.7 70.1 70.5 70.61 77.0 77.131 77.137 77.317 77.323 77.327 77.332 77.353 77.359 77.405 77.410 79.0 81.0 81.1 81.19 82.0 83.0 83.48 83.68 83.130 83.132 85.0 87.0 87.29 87.30 87.147 87.160 87.203 87.217 88.0 91.0 91.1 91.14 92.0 93.0 93.1 93.7 95.0 96.0 96.138 96.158 96.208 96.228 98.13 98.19 98.128 98.134 100.60 100.80 102.0 104.0 104.1 104.31 105.0 106.0 106.1 106.7 107.1 107.7 108.0 111.0 111.80 111.86 111.154 111.160 111.166 111.172 111.202 111.208 111.322 111.338 113.0 115.0 115.1 115.30 116.0 117.0 117.1 117.7 118.1 118.7 119.0 120.0 120.160 120.166 120.168 120.177 120.179 120.188 120.190 120.196 120.202 120.213 120.240 120.246 120.349 120.364 120.423 120.428 122.0 124.0 124.1 124.18 125.0 126.0 126.1 126.7 127.0 128.0 128.83 128.86 128.193 128.196 128.279 128.288 130.0 130.10 131.0 133.0 133.1 133.18 134.0 135.0 135.1 135.7 136.0 137.0 137.64 137.70 137.221 137.242 137.252 137.253 137.409 137.430 137.435 137.445 137.451 137.470 137.475 137.489 139.40 139.50 139.54 139.62 141.0 143.0 143.1 143.15 143.16 143.20 144.0 145.0 145.1 145.7 146.0 147.0 147.1 147.5 148.0 164.0 164.164 164.168 164.267 164.274 164.280 164.287 164.383 164.387 164.625 164.629 166.0 168.0 168.1 168.17 168.18 168.22 169.0 170.0 170.1 170.7 171.0 172.0 172.1 172.5 173.0 183.0 183.172 183.176 183.263 183.267 183.480 183.484 185.0 187.0 187.1 187.33 188.0 189.0 189.1 189.7 190.1 190.9 190.68 190.75 191.0 205.0 205.156 205.162 205.256 205.263 205.648 205.656 205.660 205.662 207.181 207.186 207.190 207.198 209.0 211.0 211.1 211.41 212.0 213.0 213.1 213.7 213.32 213.35 214.1 214.4 215.1 215.9 215.68 215.75 216.0 224.0 225.0 226.0 226.34 226.50 226.146 226.149 226.169 226.175 226.182 226.198 226.224 226.232 228.0 229.0 229.55 229.66 231.0 232.0 232.39 232.48 232.52 232.59 232.63 232.73 232.106 232.114 234.0 234.17 235.2 235.12 237.0 237.7 238.47 238.59 239.0}} {richtext:font:italic {44.14 44.22 46.1 46.9 49.230 49.238 55.15 55.22 57.1 57.8 63.339 63.346 67.16 67.22 67.24 67.28 69.1 69.7 70.1 70.5 77.131 77.137 77.317 77.323 91.8 91.14 93.1 93.7 98.13 98.19 104.18 104.24 104.25 104.31 106.1 106.7 107.1 107.7 111.80 111.86 111.154 111.160 111.202 111.208 115.17 115.23 115.24 115.30 117.1 117.7 118.1 118.7 120.160 120.166 120.240 120.246 124.12 124.18 126.1 126.7 133.12 133.18 135.1 135.7 137.64 137.70 143.8 143.14 143.16 143.20 145.1 145.7 147.1 147.5 164.383 164.387 168.10 168.16 168.18 168.22 170.1 170.7 172.1 172.5 183.263 183.267 187.18 187.24 187.25 187.33 189.1 189.7 190.1 190.9 205.156 205.162 205.648 205.656 211.22 211.28 211.29 211.32 211.33 211.41 213.1 213.7 213.32 213.35 214.1 214.4 215.1 215.9 226.146 226.149 226.169 226.175 226.224 226.232}} {richtext:font:bold {4.4 4.16 4.55 4.62 6.24 6.36 10.20 10.32 10.217 10.224 29.24 29.30 40.1 40.10 111.166 111.172 120.168 120.177 120.179 120.188 120.190 120.196 120.202 120.213 128.83 128.86 128.193 128.196 128.279 128.288 137.435 137.445 137.475 137.489 232.39 232.48 232.52 232.59 238.47 238.59}} {richtext:font:bolditalic {10.246 10.251 10.263 10.284}} {richtext:font:typewriter {10.105 10.114 10.129 10.136 15.0 15.9 16.0 16.21 23.0 23.11 24.0 24.12 25.0 25.14 26.0 26.18 27.0 27.14 28.0 28.6 29.0 29.16 30.0 30.15 31.0 31.10 32.0 32.10 33.0 33.8 33.21 33.31 34.0 34.6 35.0 35.8 36.0 36.16 36.69 37.20 44.1 44.13 51.89 51.97 51.127 51.135 51.176 51.185 55.1 55.14 59.0 61.0 63.242 63.247 63.252 63.256 63.300 63.304 63.311 63.316 63.437 63.441 63.448 63.454 67.1 67.16 67.22 67.23 72.0 76.0 77.327 77.332 77.353 77.359 77.405 77.410 81.1 81.19 83.48 83.68 83.130 83.132 87.29 87.30 87.147 87.160 87.203 87.217 88.0 89.0 91.1 91.8 96.138 96.158 96.208 96.228 98.128 98.134 100.60 100.80 104.1 104.18 104.24 104.25 109.0 110.0 111.322 111.338 115.1 115.17 115.23 115.24 120.349 120.364 120.423 120.428 124.1 124.12 133.1 133.12 137.221 137.242 137.252 137.253 137.409 137.430 137.451 137.470 139.40 139.50 139.54 139.62 143.1 143.8 143.14 143.15 149.0 163.0 164.164 164.168 164.267 164.274 164.280 164.287 164.625 164.629 168.1 168.10 168.16 168.17 174.0 182.0 183.172 183.176 183.480 183.484 187.1 187.18 187.24 187.25 190.68 190.75 192.0 204.0 205.256 205.263 205.660 205.662 207.181 207.186 207.190 207.198 211.1 211.22 211.28 211.29 211.32 211.33 215.68 215.75 217.0 224.0 226.34 226.50 226.182 226.198 229.55 229.66 232.63 232.73 232.106 232.114 235.2 235.12}} {richtext:font:heading0 {1.0 2.0}} {richtext:font:heading1 {3.0 4.0 8.0 9.0 12.0 13.0 21.0 22.0 42.0 43.0 53.0 54.0 65.0 66.0 79.0 80.0 85.0 86.0 89.0 90.0 102.0 103.0 113.0 114.0 122.0 123.0 130.0 130.10 131.0 132.0 141.0 142.0 166.0 167.0 185.0 186.0 209.0 210.0 228.0 229.0}} {richtext:font:heading2 {9.0 10.0 13.0 14.0 18.0 19.0 22.0 23.0 39.0 40.0 43.0 44.0 45.0 46.0 48.0 49.0 54.0 55.0 56.0 57.0 58.0 59.0 62.0 63.0 66.0 67.0 68.0 68.9 70.61 72.0 76.0 77.0 80.0 81.0 82.0 83.0 86.0 87.0 90.0 91.0 92.0 93.0 95.0 96.0 103.0 104.0 105.0 106.0 108.0 109.0 110.0 111.0 114.0 115.0 116.0 117.0 119.0 120.0 123.0 124.0 125.0 126.0 127.0 128.0 132.0 133.0 134.0 135.0 136.0 137.0 142.0 143.0 144.0 145.0 146.0 147.0 148.0 149.0 163.0 164.0 167.0 168.0 169.0 170.0 171.0 172.0 173.0 174.0 182.0 183.0 186.0 187.0 188.0 189.0 191.0 192.0 204.0 205.0 210.0 211.0 212.0 213.0 216.0 217.0 225.0 226.0 231.0 232.0 234.0 234.17 237.0 237.7}} {{} {12.0 20.0 22.0 22.10}} {jdoc:link:jstools.jdoc {4.55 4.62}} {jdoc:manpage:tclvars {10.129 10.136}} {jdoc:link:jslibraries.jdoc#Usage {10.242 10.259}} {jdoc:link:jslibraries.jdoc {10.263 10.284}} {jdoc:anchorname:Evolution {228.0 229.0}} {jdoc:anchorname:Credits_and_Copyright {12.0 13.0}} {jdoc:anchorname:Introduction {3.0 4.0}} {jdoc:anchorname:Overview {21.0 22.0}} {jdoc:link:jprefpanel.tcl.jdoc#j:global_pref_panel {137.451 137.470}} {jdoc:anchorname:Usage {8.0 9.0}} {jdoc:link:jprefpanel.tcl.jdoc {137.475 137.489}} {jdoc:link:jslibraries.tcl {10.213 10.234}} {jdoc:link:jprefs.tcl.jdoc {137.435 137.445}} {jdoc:link:jinit.tcl.jdoc {40.1 40.10}} {jdoc:link:#j:wm_client {23.0 23.11}} {jdoc:link:#j:wm_command {24.0 24.12}} {jdoc:link:#j:new_toplevel {25.0 25.14}} {jdoc:link:#j:selection_if_any {26.0 26.18}} {jdoc:link:#j:no_selection {27.0 27.14}} {jdoc:link:#j:default_button {29.0 29.16}} {jdoc:link:#j:cancel_button {30.0 30.15}} {jdoc:link:#j:tab_ring {31.0 31.10}} {jdoc:link:#j:dialogue {32.0 32.10 33.0 33.8}} {jdoc:link:#j:rule {34.0 34.6}} {jdoc:link:#j:filler {35.0 35.8}} {jdoc:link:#j:configure_font {36.0 36.16 226.34 226.50 226.182 226.198}} {jdoc:link:#j:configure_tag_font {37.0 37.20}} {jdoc:anchorname:j:wm_client {42.0 43.0}} {jdoc:anchorname:j:wm_command {53.0 54.0}} {jdoc:anchorname:j:new_toplevel {65.0 66.0}} {jdoc:anchorname:j:selection_if_any {79.0 80.0}} {jdoc:anchorname:j:no_selection {85.0 86.0}} {jdoc:anchorname:j:default_button {102.0 103.0}} {jdoc:anchorname:j:cancel_button {113.0 114.0}} {jdoc:anchorname:j:tab_ring {122.0 123.0}} {jdoc:anchorname:j:dialogue {130.0 131.0}} {jdoc:anchorname:j:rule {141.0 142.0}} {jdoc:anchorname:j:filler {166.0 167.0}} {jdoc:anchorname:j:configure_font {185.0 186.0}} {jdoc:anchorname:j:configure_tag_font {209.0 210.0}} {jdoc:link:jprefs.tcl.jdoc#j:read_standard_prefs {137.409 137.430}} {jdoc:manpage:hostname {51.89 51.97}} {jdoc:manpage:wish {63.300 63.304}} {jdoc:manpage:tclsh {63.311 63.316}} {jdoc:manpage:list {63.437 63.441}} {jdoc:manpage:concat {63.448 63.454}} {jdoc:link:#j:beep {28.0 28.6}} {jdoc:anchorname:j:beep {89.0 90.0}}} {{richptr 226.50} {del_from 239.0} {matchend 96.227} {abbrevstart 211.3} {abbrevend 211.17} {insert 1.0} {del_to 239.0} {matchstart 96.216} {anchor 1.0} {emacs_mark 239.0} {current 1.0}}}